package A.Datos;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import DAO.ModulosDAO;

public class Modulos {
	

	    /**
	     * seleccion  de un grupo
	     * @param idGrupo
	     * @return array de grupoDAO
	     */
	    public static ArrayList<ModulosDAO> grupo(int idModulo) throws Exception {
	        String sql = "SELECT * FROM MODULO WHERE ID_MODULO=?;";
	        Connection conn = null;
	        PreparedStatement sentencia = null;
	        ResultSet rs = null;
	        ArrayList<ModulosDAO> modulo = null;
	        try {
	            conn = ConexionBasedeDatos.abreConnexio();
	            sentencia = conn.prepareStatement(sql);
	            sentencia.setInt(1, idModulo);
	            rs = sentencia.executeQuery();
	            recogeModulo(modulo, rs);
	        } catch (SQLException ex) {
	            throw new Exception("No se ha podido recoger grupo "+ idModulo + "\n"
	                    + ex.getMessage() + "(" + ex.getErrorCode() + ")");
	        } finally {
	            ConexionBasedeDatos.cierraRecursos(conn, rs);
	        }
	        return modulo;
	    }
	    /**
	     * Recoge los datos que provienen de la BD y se rellenan los DAO
	     * @param listadoAlumnos
	     * @param rs
	     * @throws SQLException
	     */
	    private static void recogeModulo(ArrayList<ModulosDAO>modulos, ResultSet rs) throws SQLException {
	        while (rs.next()) {
	        	ModulosDAO modulosDAO = new ModulosDAO();
	        	modulosDAO.setCurso_modulo(rs.getString("curso_modulo"));
	        	modulosDAO.setHoras_modulo(rs.getString("horas_modulo"));
	        	modulosDAO.setId_ciclo(rs.getString("id_ciclo"));
	        	modulosDAO.setId_modulo(rs.getString("id_modulo"));
	        	modulosDAO.setNom_modulo(rs.getString("nom_modulo"));
	            
	            modulos.add(modulosDAO);         
	        }
	    }

	 }//class